using System;
using Volo.Abp.Domain.Entities.Auditing;

namespace Acme.BookStore.FormWhx.Storehouse
{
    public class WarehouseOperationLog : AuditedAggregateRoot<Guid>
    {
        /// <summary>
        /// 操作类型（新增、修改）
        /// </summary>
        public string OperationType { get; set; }

        /// <summary>
        /// 操作人
        /// </summary>
        public string Operator { get; set; }

        /// <summary>
        /// 操作时间
        /// </summary>
        public DateTime OperationTime { get; set; }

        /// <summary>
        /// 操作描述
        /// </summary>
        public string Description { get; set; }

        /// <summary>
        /// 关联的仓库ID
        /// </summary>
        public Guid WarehouseId { get; set; }

        /// <summary>
        /// 仓库编码
        /// </summary>
        public string WarehouseCode { get; set; }

        /// <summary>
        /// 仓库名称
        /// </summary>
        public string WarehouseName { get; set; }

        protected WarehouseOperationLog() { }

        public WarehouseOperationLog(
            Guid id,
            string operationType,
            string @operator,
            string description,
            Guid warehouseId,
            string warehouseCode,
            string warehouseName
        ) : base(id)
        {
            OperationType = operationType;
            Operator = @operator;
            OperationTime = DateTime.Now;
            Description = description;
            WarehouseId = warehouseId;
            WarehouseCode = warehouseCode;
            WarehouseName = warehouseName;
        }
    }
} 